A wide-area VLAN service, which is primarily used to connect corporate LANs, is a field where far more MAC address learning is needed than in corporate VLANs.
Generally, when a corporation or like entity constructs a private network, several methods, which include a method that uses a private line, a method that uses an IP-VPN (Virtual Private Network) using IP (Internet Protocol), and a method that uses a VLAN (Virtual LAN) through the use of wide-area LAN service, are available. Among others, wide-area LAN service is widespread because of cost advantages over private lines and IP-VPNs and because of the ease of management.
Wide-area LAN service requires the use of layer 2 switches to ensure transmission of LAN data without interference between a plurality of corporations. To achieve this, a technology is employed that assigns a unique VLAN ID to each individual corporation and identifies the destination of the data based on the VLAN ID. More specifically, when an Ethernet packet is sent out from a corporation, a VLAN ID is assigned in an edge switch at the entrance to the carrier network, and the VLAN ID is checked in a core switch, within the carrier network, to transfer the packet.
Usually, a layer 2 switch maintains a MAC address learning table which stores the source MAC address, VLAN ID, and receiving port of each received packet. When relaying the packet, the table is searched by using the destination MAC address and VLAN ID of the packet; if there is no matching entry, the packet is transferred to all ports to which the VLAN ID belongs, but if there is a matching entry, the packet is transferred only to its associated port. This prevents unnecessary packet transfers. Each entry is aged out (removed from the learning table) unless it is referred to within a predetermined period of time. This period of time is called the aging time.
FIG. 29 is a schematic diagram for explaining a MAC address learning method according to the prior art. In the figure, a user network 291 (VLAN ID=1), a user network 292 (VLAN ID=1), and a user network 293 (VLAN ID=2) are connected as a VLAN via a carrier network 290. Here, the user network 291 (VLAN ID=1) and the user network 292 (VLAN ID=1), for example, are networks operated within the same corporation, while the user network 293 (VLAN ID=2) is a network operated within another corporation.
Terminals A, B, . . . are attached to the respective user networks 291, 292, and 293. The carrier network 290 comprises edge switches 294, 295, 296, etc. located at the edge of it and core switches 297, 298, 299, etc. located inside it. The edge switches and the core switches are each provided with a MAC address learning table T. In the figure, only the MAC address table T maintained in the edge switch 294 is shown as a representative example.
Next, the operation of the VLAN shown in FIG. 29 will be described briefly by way of example. When the terminal A (MAC address=a) in the user network 291 (VLAN ID=1) sends out a packet destined for the terminal B (MAC address=a) in the user network 292 that has the same VLAN ID, the MAC address learning table in each of the edge switches and core switches is searched by using the destination MAC address=b and the VLAN ID=1 as keywords. At first, as the destination MAC address=b is not registered, that is, not learned, in the MAC address learning table in any of the switches, the packet is broadcast from each switch in the carrier network 290. As a result, the terminal A is learned at all the switches, i.e., the edge switch 294, the core switch 297, the edge switch 295, the core switch 298, the core switch 299, and the edge switch 296.
Next, when the terminal B sends out a return packet to the terminal A, as the MAC address=a of the destination terminal A is already learned at the edge switch 295, the core switch 297, and the edge switch 294, the packet is not broadcast, but is transferred via the edge switch 295, the core switch 297, and the edge switch 294. However, the probability of using the learned MAC address of the terminal A at the other switches, i.e., the core switch 298, the core switch 299, and the edge switch 296, is low. When the learned MAC address of the terminal A is not used, the learning of the terminal A at these other switches will be of no use.
As the number of users, for example, corporations, subscribing to wide-area LAN service increases, and as a result, the number of terminals connected to the network increases, the number of MAC addresses passing through the network rapidly increases. If there are one thousand terminals in the user network 291, for example, each MAC learning table must have one thousand entries. Here, any packet for which there is no matching entry in the MAC learning table is transferred (broadcast) to all the ports of the switch as described above. As a result, the MAC address is learned at every switch in the carrier network that received the packet, hence the problem that the MAC address learning table becomes saturated.
As a means for solving this problem, EoE (Ethernet over Ethernet) technology devised by PoweredCom is attracting attention. EoE is a technology in which a packet transmitted from a user network is converted at an edge switch into an EoE-MAC address format used in the EoE network for transmission through the carrier network. This serves to reduce the load since the MAC addresses that must be learned at each core switch are only the EoE-MAC addresses of the edge switches.
FIG. 30 is a schematic diagram for explaining packet transmission and reception when the prior art EoE technology is used. In the figure, a user network (VLAN ID=1) 301 and a user network (VLAN ID=1) 302 are connected as a VLAN via a carrier network 300. The user network (VLAN ID=1) 301 contains terminals A and B, as an example. The user network (VLAN ID=1) 302 contains terminals C and D, as an example. The carrier network 300 comprises edge switches 303, 304, etc. located at the edge of it and core switches 305, etc. located inside it. The edge switches 303 and 304 are each provided with a MAC address learning table T1. In the figure, only the MAC address learning table T1 maintained in the edge switch 303 is shown as a representative example. The core switch 305 is provided with a MAC address learning table T2. The contents of the MAC address learning tables T1 and T2 shown here indicate the states after learning is done.
Next, the operation of the VLAN shown in FIG. 30 will be described briefly. The description deals with the case in which the terminal A (MAC address=a) in the user network 301 (VLAN ID=1) sends out a packet destined for the terminal C (MAC address=c) in the user network 302 (VLAN ID=1). In the EoE technology, EoE-MAC addresses e1, e2, . . . are set at the user-network-side ports of the respective edge switches. The EoE-MAC addresses are addresses applicable only within the carrier network 300. More specifically, EoE-MAC address e1 is set on port 1 of the edge switch 303, and EoE-MAC address e2 is set on port 2 of the edge switch 304.
Reference numeral 306 indicates the packet sent out from the terminal A; “c” in the leftmost part of the packet 306 indicates the destination, and “a” to the right of it indicates the source. When the packet 306 is received from the terminal A, the edge switch 303 sets the source EoE-MAC address corresponding to the received source address “a” to e1 at its receiving port 1.
Further, the destination EoE-MAC address=e2 is retrieved by searching the MAC address learning table T1 based on the destination MAC address=“c” and VLAN ID=1. Then, the packet 306 is converted into a packet 307 encapsulated with e1 as the source EoE-MAC address and e2 as the destination MAC address, and the packet 307 is transmitted through the carrier network 300. The core switch 305 in the carrier network 300 searches the MAC address learning table T2 by using the destination EoE-MAC address=e2 as the keyword, and transfers the packet 307 to the port 2 obtained as the result of the search.
The edge switch 304 removes the capsule containing the source EoE-MAC address e1 and the destination EoE-MAC address e2 from the head of the packet, and transmits the packet to the terminal C. This reduces the load since the core switch 305 need only learn the EoE-MAC addresses e1 and e2 of the edge switches 303 and 304 in the carrier network 300. In the prior art of FIG. 29, each MAC address learning table T2 in the carrier network has had to learn the MAC addresses of all the terminals a, b, c, and d; by contrast, in the prior art of FIG. 30, by using the EoE-MAC addresses e1, e2, . . . applicable only in the carrier network, the contents of the MAC address learning table maintained in the core switch 305 can be dramatically reduced.
FIG. 31 is a block diagram showing the configuration of the prior art edge switch 294 shown in FIG. 29. In the figure, reference numeral 311 is a port on the carrier network side, 312 is a port 1 on the user network side, 313 is a carrier-side receive packet control section, 314 is a user-side learning table searching section, 315 is a user-side transmit packet control section, 316 is a carrier-side learning table control section, 317 is a carrier-side MAC address learning table, 318 is a user-side MAC address learning table, 319 is a user-side learning table control section, 320 is a user-side receive packet control section, 321 is a carrier-side learning table searching section, 322 is a carrier-side transmit packet control section, and 323 is an aging time management section which manages the aging time for each entry of learned information in the carrier-side MAC address learning table and removes aged information contents from the carrier-side MAC address learning table 317. The carrier side here means the carrier network side, and the user side means the user network side.
Next, the operation of the edge switch shown in FIG. 31 will be described briefly.
First, a description will be given of the case where a packet is transmitted to the edge switch 294 from the carrier network 290 side.
When the packet is received from the carrier-network-side port 311, the carrier-side receive packet control section 313 requests the carrier-side learning table control section 316 to register the source address and the receiving port into the contents of the carrier-side MAC address learning table 317 (T in FIG. 29).
Then, the carrier-side learning table control section 316 registers the source address of the packet and its receiving port into the carrier-side MAC address learning table 317.
Next, based on the destination MAC address of the packet, the user-side MAC address learning table (of the same format as T in FIG. 29) provided in association with the user-side port is searched to retrieve the user-network-side port number to which the packet is to be transmitted. Based on the result of the search of the user-side MAC address learning table 318, the user-side transmit packet control section 315 transfers the packet to the designated transmit port on the user network side. If there is no matching transmit port number on the user network side, the packet is broadcast to all the terminals in the user network.
On the other hand, when a packet is transmitted to the edge switch 295 from the user network 292, the user-side receive packet control section 320, upon receiving the packet from the user-network-side port 311, requests the user-side learning table control section 319 to register the source address and the receiving port into the contents of the user-side MAC address learning table 318.
Then, the user-side learning table control section 319 registers the source address of the packet and its receiving port into the user-side MAC address learning table 318.
Next, based on the destination MAC address of the packet, the carrier-side learning table searching section 321 searches the carrier-side MAC address learning table 317 (T in FIG. 29) provided in association with the carrier-side port, and retrieves the carrier-network-side port number to which the packet is to be transmitted. Based on the result of the search of the carrier-side MAC address learning table, the carrier-side transmit packet control section 322 transfers the packet to the designated transmit port on the carrier network side. If there is no matching transmit port number on the carrier network side, the packet is broadcast to all the switches in the carrier network.
The aging time management section 323 removes information from the carrier-side MAC address learning table 317 by determining that the information is not in use if its learned contents have not been updated for a predetermined period of time, for example, 300 seconds.    [Patent Document 1] Japanese Unexamined Patent Publication No. H03-001735    [Patent Document 2] Japanese Unexamined Patent Publication No. H04-360336    [Patent Document 3] Japanese Unexamined Patent Publication No. H06-69927    [Non-patent Document 1] Nikkei Communications, Nov. 24 2003, No. 403, pp. 73-81